
package com.shai.wool.user.dao;

import org.springframework.stereotype.Repository;

import com.shai.wool.common.dao.BaseDao;
import com.shai.wool.user.entity.TokenVO;
import com.shai.wool.user.param.TokenParam;

/**
 * 临时会话tokenDao实现类
 *
 * @author 朱国军
 * @version 2016年04月25日 朱国军
 */
@Repository("tokenDao")
public class TokenDao extends BaseDao<TokenVO> {

    /**
     * 新增，注：返回的添加的条数，获取主键用entity.getId();
     *
     * @param entity 要增加的临时会话token对象
     * @return 返回新增的条数
     */
    public Integer insert(TokenVO entity) {
        return this.getSqlSession().insert("insertToken", entity);
    }
    
    /**
     * 根据ID获取临时会话token实体
     *
     * @param id 主键
     * @return 临时会话token信息
     */
    public TokenVO findById(String id) {
        return this.getSqlSession().selectOne("selectTokenById", id);
    }
    
    /**
     * 根据用户ID和时间查询最新的一个可用token
     *
     * @param param 临时会话token查询条件
     * @return 临时会话token列表
     */
    public TokenVO queryByUserId(TokenParam param) {
        return this.getSqlSession().selectOne("selectTokenByUserId", param);
    }
}
